-
Notifications
You must be signed in to change notification settings - Fork 2.5k
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Create metrics.Factory adapter for OTEL Metrics #5661
Conversation
Signed-off-by: Wise-Wizard <saransh.shankar@gmail.com>
Codecov ReportAll modified and coverable lines are covered by tests ✅
Additional details and impacted files@@ Coverage Diff @@
## main #5661 +/- ##
=======================================
Coverage 96.38% 96.38%
=======================================
Files 329 334 +5
Lines 16060 16141 +81
=======================================
+ Hits 15479 15558 +79
- Misses 404 405 +1
- Partials 177 178 +1
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
Signed-off-by: Wise-Wizard <saransh.shankar@gmail.com>
Signed-off-by: Wise-Wizard <saransh.shankar@gmail.com>
Co-authored-by: Yuri Shkuro <yurishkuro@users.noreply.github.com> Signed-off-by: Saransh Shankar <103821431+Wise-Wizard@users.noreply.github.com>
Signed-off-by: Wise-Wizard <saransh.shankar@gmail.com>
…into OTEL_Metrics
Signed-off-by: Wise-Wizard <saransh.shankar@gmail.com>
tested via ``` $ go test -benchmem -benchtime=5s -bench=Benchmark ./internal/metrics/ ``` before: ``` BenchmarkPrometheusCounter-10 856818336 6.875 ns/op 0 B/op 0 allocs/op BenchmarkOTELCounter-10 146044255 40.92 ns/op 32 B/op 2 allocs/op ``` after: `` BenchmarkPrometheusCounter-10 855046669 6.924 ns/op 0 B/op 0 allocs/op BenchmarkOTELCounter-10 293330721 21.05 ns/op 16 B/op 1 allocs/op ``` Signed-off-by: Yuri Shkuro <github@ysh.us>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
run make fmt
to add headers
I fixed perf by 2x in 4a99291. For some reason OTEL counter still does a memory allocation for each Inc() call. We should open an upstream ticket for that. |
Oh that's great! |
Signed-off-by: Wise-Wizard <saransh.shankar@gmail.com>
Actually, your benchmark is incorrect. You are not initializing OTEL SDK, so the benchmark is actually going to noop implementation (even more surprising why it performs an allocation in no-op mode). |
Yes I do realise that, I wrote the benchmark first and just ran it with no-op implementation for the looks of it expecting a very low time to be taken. |
I am quite sure that the perf hit is coming from that one still remaining allocation. |
Signed-off-by: Wise-Wizard <saransh.shankar@gmail.com>
Signed-off-by: Wise-Wizard <saransh.shankar@gmail.com>
Signed-off-by: Wise-Wizard <saransh.shankar@gmail.com>
Signed-off-by: Wise-Wizard <saransh.shankar@gmail.com>
Co-authored-by: Yuri Shkuro <yurishkuro@users.noreply.github.com> Signed-off-by: Saransh Shankar <103821431+Wise-Wizard@users.noreply.github.com>
Signed-off-by: Wise-Wizard <saransh.shankar@gmail.com>
Signed-off-by: Wise-Wizard <saransh.shankar@gmail.com>
Signed-off-by: Wise-Wizard <saransh.shankar@gmail.com>
Signed-off-by: Wise-Wizard <saransh.shankar@gmail.com>
Signed-off-by: Wise-Wizard <saransh.shankar@gmail.com>
Signed-off-by: Wise-Wizard <saransh.shankar@gmail.com>
Signed-off-by: Wise-Wizard <saransh.shankar@gmail.com>
Signed-off-by: Wise-Wizard <saransh.shankar@gmail.com>
Co-authored-by: Yuri Shkuro <yurishkuro@users.noreply.github.com> Signed-off-by: Saransh Shankar <103821431+Wise-Wizard@users.noreply.github.com>
Signed-off-by: Wise-Wizard <saransh.shankar@gmail.com>
Signed-off-by: Wise-Wizard <saransh.shankar@gmail.com>
Which problem is this PR solving?
This PR addresses a part of the issue #5633
Description of the changes
This is a Draft PR to bridge the OTEL Metrics instead of using Internal Metrics to minimize code changes.
How was this change tested?
The changes were tested by running the following command:
make test
Checklist
for jaeger: make lint test
for jaeger-ui: yarn lint
andyarn test